9 : 0;
else
order = 0;
-
-#ifndef NDEBUG
- /* PoD code assumes that a page owned by the domain, not from the xenheap, and in the p2m
- * is on the domain page list. Verify this assumption. */
- if ( mfn_valid(mfn)
- && p2m_is_ram(p2mt)
- && page_get_owner(mfn_to_page(mfn))==d
- && ( (mfn_to_page(mfn)->count_info & PGC_xen_heap) == 0 ) )
- {
- struct page_info *p, *q;
-
- p = mfn_to_page(mfn);
-
- spin_lock(&d->page_alloc_lock);
-
- /* Walk the domain page list and make sure this page is on it... */
- for ( q = page_list_first(&d->page_list) ; q; q = page_list_next(q, &d->page_list) )
- if ( q == p )
- break;
- if ( !q )
- {
- printk("%s: mfn %lx owned by d%d, not xen_heap, but not on domain page_list!\n",
- __func__, mfn_x(mfn), d->domain_id);
- BUG();
- }
-
- spin_unlock(&d->page_alloc_lock);
- }
-#endif
-
rc = d->arch.p2m->set_entry(d, gfn, mfn, order, p2mt);
gfn += 1ul << order;
if ( mfn_x(mfn) != INVALID_MFN )